Visual Basic (Declaration) | |
---|---|
Public Overloads Function TryUpdate( _ ByVal key As TKey, _ ByVal fnUpdate As CSharpTest.Net.Collections.KeyValueUpdate(Of TKey,TValue) _ ) As Boolean |
C# | |
---|---|
public bool TryUpdate( TKey key, CSharpTest.Net.Collections.KeyValueUpdate<TKey,TValue> fnUpdate ) |
Parameters
- key
- fnUpdate
Library/Library.Test/TestSynchronizedCollections.cs
C# | Copy Code |
---|---|
SynchronizedDictionary<int, string> data = new SynchronizedDictionary<int, string>(new Dictionary<int, string>()); Assert.IsTrue(data.TryAdd(1, "a")); Assert.IsFalse(data.TryAdd(1, "a")); Assert.IsTrue(data.TryUpdate(1, "a")); Assert.IsTrue(data.TryUpdate(1, "c")); Assert.IsTrue(data.TryUpdate(1, "d", "c")); Assert.IsFalse(data.TryUpdate(1, "f", "c")); Assert.AreEqual("d", data[1]); Assert.IsTrue(data.TryUpdate(1, "a", data[1])); Assert.AreEqual("a", data[1]); Assert.IsFalse(data.TryUpdate(2, "b")); string val; Assert.IsTrue(data.TryRemove(1, out val) && val == "a"); Assert.IsFalse(data.TryRemove(2, out val)); Assert.AreNotEqual(val, "a"); Assert.IsFalse(data.TryUpdate(1, (k, x) => x.ToUpper())); data[1] = "a"; data[1] = "b"; Assert.IsTrue(data.TryUpdate(1, (k, x) => x.ToUpper())); Assert.AreEqual("B", data[1]); |
VB.NET | Copy Code |
---|---|
Dim data As New SynchronizedDictionary(Of Integer, String)(New Dictionary(Of Integer, String)()) Assert.IsTrue(data.TryAdd(1, "a")) Assert.IsFalse(data.TryAdd(1, "a")) Assert.IsTrue(data.TryUpdate(1, "a")) Assert.IsTrue(data.TryUpdate(1, "c")) Assert.IsTrue(data.TryUpdate(1, "d", "c")) Assert.IsFalse(data.TryUpdate(1, "f", "c")) Assert.AreEqual("d", data(1)) Assert.IsTrue(data.TryUpdate(1, "a", data(1))) Assert.AreEqual("a", data(1)) Assert.IsFalse(data.TryUpdate(2, "b")) Dim val As String Assert.IsTrue(data.TryRemove(1, val) AndAlso val = "a") Assert.IsFalse(data.TryRemove(2, val)) Assert.AreNotEqual(val, "a") Assert.IsFalse(data.TryUpdate(1, Function(k, x) x.ToUpper())) data(1) = "a" data(1) = "b" Assert.IsTrue(data.TryUpdate(1, Function(k, x) x.ToUpper())) Assert.AreEqual("B", data(1)) |
Target Platforms: Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7
Reference
SynchronizedDictionary<TKey,TValue> ClassSynchronizedDictionary<TKey,TValue> Members
Overload List
KeyValueUpdate